package com.example.cloud.model.dto;

import lombok.Data;

import java.util.ArrayList;
import java.util.List;
import java.util.Map;

/**
 * Created by wangtao on 2018/4/24.
 */
@Data
public class QueryModel {
    // 查询模式(and/or)
    private String mode;
    // 查询页数
    private int pageNumber;
    // 每页大小
    private int pageSize;
    // 排序字段
    private String order;
    // 查询入参,参数类型可以是map或者pojo
    private Object paras;
    // 查询入参,参数类型为Map(key：value)
    private Map para;
    // 查询默认条件
    private List<FilterModel> defaultFilters = new ArrayList<>();
    // 查询条件
    private List<FilterModel> filters = new ArrayList<>();
    // 计算查询起始行
    public int getStartLine() {
        return Math.addExact(Math.multiplyExact(pageNumber - 1, pageSize),1);
    }
}
